/**
 Copyright will be fixed soon.
 Author: Hiroshi Ota.
 $Date: $
 $Revision: $
*/

#ifdef _BRICKOS_
#include "c++/Lamp.H"
#endif

#ifndef _BRICKOS_

#ifndef _PW_LAMP_H_
#define _PW_LAMP_H_

#include "ISimulatorControl.h"

class Lamp
{
public:
	/**
	*  The RCX output pad to which the Lamp is connected
	*/
	enum Port { 
         A, //!< RCX output pad A
         B, //!< RCX output pad B
		 C  //!< RCX output pad C
	   }; 

	Lamp(enum Port port, ISimulatorControl* sc=0);
	~Lamp(void);

	const void on() const;
	const void off() const;

	const void brightness(const unsigned char level) const;
private:

	ISimulatorControl* simCon;
	enum Port myPort;
};

#endif // _PW_LAMP_H_

#endif // _BRICKOS_
